package w83b.w83bManager;

import java.util.HashMap;
import java.util.List;

import w83b.w83bBeans.W83bCentroTrabajoCompletoBean;
import w83b.w83bDAO.W83bFactoriaDAO;
import w83b.w83bDAO.w83bConstantesBD.W83bCentroTrabajoBD;
import w83b.w83bDAO.w83bConstantesBD.W83bComarcaVistaBD;
import w83b.w83bUtilidadesComunes.W83bClsConstantes;


public class W83bCentroTrabajo implements W83bICentroTrabajo {
	public java.util.List buscarCentroTrabajo(w83b.w83bBeans.W83bCentroTrabajoBean param) throws Exception{
		
		List listaCentroTrabajo = W83bFactoriaDAO.getMantenimientosDAO().buscarCentroTrabajo(param);
		
		return listaCentroTrabajo;	
	}
	
	public java.lang.Integer contarCentroTrabajo(w83b.w83bBeans.W83bCentroTrabajoBean param) throws Exception{
		
		return new Integer(W83bFactoriaDAO.getMantenimientosDAO().contarCentroTrabajo(param));	
	}
	
	public java.util.HashMap buscarComarca(HashMap hashComarca) throws Exception{
		HashMap mapaComarca = new HashMap();
		List listaDatosParametros = W83bFactoriaDAO.getMantenimientosDAO().buscarComarca(
				(String)hashComarca.get("codProvincia"),(String)hashComarca.get("codMunicipio"));
		
		HashMap mapaFila = new HashMap();
		
		if(listaDatosParametros.size()>0){
			mapaFila = (HashMap)listaDatosParametros.get(0);
			
			mapaComarca.put("idComarca", mapaFila.get(W83bComarcaVistaBD.IDCOMARCA));
			mapaComarca.put("descComarca", mapaFila.get(W83bComarcaVistaBD.DESCCOMARCA));
		}
		
		return mapaComarca;	
	}
	
	public java.util.List cargarCnae(HashMap mapaResultado) throws Exception{
		List listaDatosParametros = W83bFactoriaDAO.getMantenimientosDAO().cargarCnae(mapaResultado);
		
		return listaDatosParametros;
	}
	
	
	public java.util.HashMap cargarCnaeCodigo(HashMap hashCnae) throws Exception{
		HashMap mapaComarca = new HashMap();
		List listaDatosParametros = W83bFactoriaDAO.getMantenimientosDAO().cargarCnaeCodigo(
				(String)hashCnae.get("codigo"));
		
		HashMap mapaFila = new HashMap();
		if(listaDatosParametros.size()>0){
			mapaFila = (HashMap)listaDatosParametros.get(0);
			mapaComarca.put("codigoCnae", mapaFila.get("CODIGO"));
			mapaComarca.put("descripcionCnae", mapaFila.get("DESCRIPCION"));
		}else{
			mapaComarca.put("codigoCnae", "NULL");
			mapaComarca.put("descripcionCnae", "NULL");		
		}
		
		return mapaComarca;	
	}
	
	public java.lang.String anyadirCentroTrabajo(w83b.w83bBeans.W83bCentroTrabajoBean param) throws Exception{
		
		String resultado = "0";
		

						W83bFactoriaDAO.getMantenimientosDAO().anyadirCentroTrabajo(param);		
						
						List listaCentros = W83bFactoriaDAO.getMantenimientosDAO().devolverNumCentroCodCentro(param);
						HashMap mapaCentro = (HashMap)listaCentros.get(0);
						
						String codigoCentro = mapaCentro.get(W83bCentroTrabajoBD.codigoCentro).toString();
						String ncentroTrab = mapaCentro.get(W83bCentroTrabajoBD.ncentroTrab).toString();
						
						resultado = new StringBuffer(W83bClsConstantes.UNO).append(codigoCentro)
									.append("__").append(ncentroTrab).toString();
						

		
		return resultado;
		
	}
	
	public W83bCentroTrabajoCompletoBean detalleCentroTrabajo(HashMap mapaCentroTrabajo) throws Exception{
		List listaDatosParametros = W83bFactoriaDAO.getMantenimientosDAO().detalleCentroTrabajo(
				(String)mapaCentroTrabajo.get("cif"),(String)mapaCentroTrabajo.get("ncentro"),(String)mapaCentroTrabajo.get("idioma"));
		
		if(listaDatosParametros.size()>0){
			return (W83bCentroTrabajoCompletoBean)listaDatosParametros.get(0);
		}else{
			return new W83bCentroTrabajoCompletoBean();
		}
	}
	
}